import cv2  # opencv 读取的格式是BGR

# cv2.IMREAD_GRAYSCALE 读取彩色图
img = cv2.imread('bg.jpg', cv2.IMREAD_COLOR)
# 查看返回的数据 类型
print('图片数据类型:', type(img))
# 查看图片的形状 (h, w, c)
print('彩色图的形状:', img.shape)
# 查看图像的像素点个数
print('彩色图的像素点个数:', img.size)

# 显示图片
# cv2.imshow('窗口的名字[英文]', 显示的图片)
# cv2.imshow('image', img)
# # 等待时间 毫秒级 0: 代表任意键终止
# cv2.waitKey(0)
# # 点击关闭后 销毁所有窗口
# cv2.destroyAllWindows()

print('-' * 60)


def img_show(name, img):
    """
        显示图片
        :param name: 窗口名字
        :param img: 图片对象
        :return: None
    """
    cv2.imshow(name, img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()


# cv2.IMREAD_GRAYSCALE 读取灰度图
img_gray = cv2.imread('bg.jpg', cv2.IMREAD_GRAYSCALE)
print('灰度图的形状:', img_gray.shape)
print('灰度图的像素点个数:', img_gray.size)
img_show('gray_image', img_gray)

# 彩色图由RGB三通道构成，每个像素点由三个子像素组成，视觉上与灰度图同大小。